技術問答
技術文章
iT 徵才
Tag
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2021 iThome 鐵人賽
DAY
18
0
DevOps
中台化轉型
系列 第
18
篇
機器學習:模型訓練架構
13th鐵人賽
HO-HSUN
2021-09-18 16:03:51
891 瀏覽
分享至
分散式運算架構
MapReduce
利用函式語言程式設計的概念,將分散運算分為映射(Map)和歸納(Reduce)階段,使用程式介面支援大數據運算任務。
Ring-AllReduce
訊息傳輸介面(Message Passing Interface, MPI)是一種頻寬優化優先的方法,實現了歸納(Reduce)的運算操作(Sum, Avg, Max),符合了模型訓練所需。
Initialization:將N個節點當中的梯度切成N個切片。
ScatterRecude:向環(Ring)中的下一個節點發送N個切片中的一個。
AllGather:透過 N-1 次環形通訊,將每個切片的梯度運算結果果播到每個節點。
Merge:每個節點均獲得了所有切片內的梯度運算結果。
參數伺服器(Parameter Server)
將模型資料儲存在"參數伺服器"上,計算節點通過"參數伺服器"來分享資料。
Server Group:
Server Manager:分配資源並維護元資料(Metadata)
Server Node:提供資料讀寫服務
Worker Group:實際運算任務
Task Scheduler:任務的分配,以及節點可用性計算
Resource Manager:資源分配和可用性保證
資料流
運算過程被抽象化成資料流傳輸過程,每個資料流中的節點代表資料運算。
平行運算同步機制
不同的節點中可以平行資料運算,但節點間也需要通訊來完成進度同步及工作協作。
同步平行運算(Bulk Synchronous Parallel, BSP)
要求所有節點以同樣的速度進行資料處理。
Superstep:一次完整的資料運算疊代
Processor:每個節點上可以有多個 Processor 做為資料處裡的一個運算單位。
Local Computation:Processor 上的運算。
Communication:Processor 之間的通訊。
Barrier Synchronization:同步屏障(Barrier)
程序中的每個執行緒進行到此,都必須等待,直到所有執行緒都到達才可以繼續執行下一個階段。
非同步平行運算(Asynchronous Synchronous Parallel, ASP)
需要配合適當的梯度下降演算法,否則可能會導致運算失敗,影響模型收歛速度。
延遲同步運算(Stale Synchronous Parallel, SSP)
利用一個 Staleness-Threshold 的閥值來確定同步的時機,閥值可依據運算狀態動態調節,適合節點運算能力較為一致的高叢集同質性環境。
梯度下降演算法
隨機梯度下降(Stochastic Gradient Descent, SGD)
彈性平均梯度下降(Elastic Averaging SGD, EASGD)
非同步隨機梯度下降(Asynchronous Stochastic Gradient Descent, ASGD)
同步隨機梯度下降(Downpour Stochastic Gradient Descent, Downpour SGD)
延遲懲罰
AsyncAdaGrad
AdaptiveRevision
AdaDelay
延遲補償
留言
追蹤
檢舉
上一篇
機器學習:深度學習
下一篇
機器學習:資料流圖(Data Flow Graphs)模型訓練架構
系列文
中台化轉型
共
30
篇
目錄
RSS系列文
訂閱系列文
6
人訂閱
26
大數據平台:資料倉儲
27
大數據平台:分散式計算
28
大數據平台:分散式檔案
29
大數據平台:訊息中介
30
大數據平台:叢集管理
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
8801
篇
完賽人數
94
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
17th鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
熱門問題
請問我的主機板技嘉 B360M AORUS PRO如果 30TB硬碟抓得到嗎?
想請教如何定義資料庫的Primary Key
【求助】顯卡/主板 支援 PCIe4.0 為何 Host to Device (H2D) 只剩 Gen1 速度 (0.5 GB/s) ?
請問今天鐵人賽的發文系統是否故障?
Windows GPO Bitlocker
Exi 8.0版本上的虛擬機器, 安裝的作業系統是Windows Server 2025, 確定輸入的密碼是正確的, 無法登入(顯示密碼錯誤)
HP iLo Advanced trial license
Docker Compose 建立 GitLab 容器,執行器 Runner 運行流水線問題
在線求大神,千奧軟體主機怎麼安裝
Complete List of Official™️ Hotwire Contact Numbers in the Full Support
熱門回答
想請教如何定義資料庫的Primary Key
請問我的主機板技嘉 B360M AORUS PRO如果 30TB硬碟抓得到嗎?
Windows GPO Bitlocker
【求助】顯卡/主板 支援 PCIe4.0 為何 Host to Device (H2D) 只剩 Gen1 速度 (0.5 GB/s) ?
熱門文章
[為你自己學 Gemini CLI ... 的原始碼] 第 1 天,從黑黑的畫面開始!
[為你自己學 Gemini CLI ... 的原始碼] 第 2 天,主程式裡的 Hello Kitty!
[為你自己學 n8n] 第 2 天,挑個風水寶地,養你的自動化小精靈!
[為你自己學 n8n] 第 1 天,用節點拼出你的自動化世界!
0x01 / HTTP.予咱一切的基礎崩·去.Smuggling
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}